Downloads:

LabView

Robot

Group 3

This contest involved two main tasks object avoidance and ball collection. While navigating a course of 5 points, we wanted to balance between moving quickly to the points of the course, deviating off course to pick up balls, and planning as short a path as possible around obstacles. We chose to use an Astar algorithm to plan a more optimal path to each destination point that avoids obstacles. Then, since balls are only detected in relatively short ranges, in the case that a ball was seen, we programmed the robot to momentarily break away from the planned Astar path and to collect the found golf ball instead. For ball collection, we built a gripper controlled by two servo motors with two doors, one on the left half of the robot for collecting orange balls and one on the right half of the robot for collecting blue balls. In our best run, we successfully completed the course in under 100 seconds, avoided obstacles, collected all 5 balls, dropped off four of the five balls, and correctly identified the positions of 4 of the five balls.

Our Astar algorithm planned the path around obstacles simply using the LADAR sensor data. Astar kept a map of course points in the form of a 2D matrix. Each time new LADAR data was received, the robot used the distances to determine if there was an object in the middle of the course that should be avoided. Based on the walls seen, the map was then marked in the matrix location corresponding to the found object position so that a new path could be planned around the object. We used a combination of the OptiTrack sensor data and knowledge of the robot's current velocity and gyro values to determine the current position and therefore calculate the necessary turn and velocity values to get to the next point.

The ball detection used the camera's image processing. An image threshold was used for orange and blue separately. Then if enough orange or blue pixels were connected together, the pixel clump was considered a ball that needed to be collected. The robot would then follow the ball for some time and then when the ball was in a specific position range in the camera's view, the ball's position was calculated and inserted as the robot's current destination point so that the robot would continue to get the ball even after the ball left the camera's field of vision. When moving to a ball's location, the gripper would open the corresponding door for collection.

The Team

Arthur Folta • Rohan Khanna • Tori Fujinami • Emily Hannigan — (left to right)

Videos

Four-Wheel Run

Three-Wheel Run